<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script src="./js/vue.js"></script>
</head>
<body>
    <div id="app">
        <div>
            {{num}}
            <button @click="add">add</button>
        </div>
    </div>
    <script>
    new Vue({
        el:"#app",
        data:{
            num:0 ,//传递数据类型  变量
            info:{
                age:18 //引用数据类型 对象
            }

        },
        methods: {
            add(){
                this.num++,
                this.info.age++
            }
            
        },
        watch: {
            num(newVal,oldVal){//新值 旧值 函数名固定写法
                console.log("a发生了变化")
                console.log(newVal,oldVal)
            },
            info:{
                handler(newVal,oldVal){
                    console.log("obj发生了变化")
                    console.log(newVal,oldVal)
                },
                deep:true //深度监听
            }
            // info(newVal,oldVal){
            //     console.log("a发生了变化")
            //     console.log(newVal,oldVal)
            // }
        },
    })
   
    
    
    </script>
    
</body>
</html>